<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html  xmlns="http://www.w3.org/1999/xhtml"
       xmlns:ui="http://java.sun.com/jsf/facelets"
       xmlns:p="http://primefaces.org/ui"
       xmlns:h="http://xmlns.jcp.org/jsf/html"
       xmlns:f="http://xmlns.jcp.org/jsf/core">

    <h:head> 

    </h:head>
    <h:body>
        <ui:composition template="./../Templates/TemplateProfesionalSalud.xhtml"
                        xmlns:ui="http://java.sun.com/jsf/facelets">

            <ui:define name="contentS">
                <p:growl id="growl" showDetail="true" life="2000" autoUpdate="true"/>
                <h:outputScript library="js" name="calendar_es.js" />
                <h:form id="frmHCE">    
<!--
                    <p:tabView id="tabHCE">  
                        <p:tab id="tabPaciente" title="Datos Informativos"> -->
                            <b><h:outputText value="Datos Informativos" style="font-size: 14px; color: #003399"/></b>
                            <h:panelGrid id="pngDatosPaciente" columns="4"  style="font-size: 12px !important">

                                <h:outputText value="Cédula:" style="color:#003399" />
                                <p:inputMask mask="9999999999" value="#{controladorHCE.hce.paciente.ci}" required="true" requiredMessage="La cédula es un campo obligatorio"/>
                                <h:outputText value="Fecha de Nacimiento:" style="color:#003399" />                        
                                <p:calendar value="#{controladorHCE.hce.paciente.fechaNacDate}" pattern="dd/MM/yyyy" showButtonPanel="false" navigator="true" locale="es" effect="slideDown">
                                    <p:ajax  event="dateSelect" listener="#{myUtil.calcularEdad(controladorHCE.hce.paciente.fechaNac)}" update="edadCalc"/>
                                    <p:ajax event="dateSelect" listener="#{myUtil.calcularEdad}" update="edadCalc" />  
                                </p:calendar>

                                <h:outputText value="Nombres:" style="color:#003399" />
                                <h:inputText value="#{controladorHCE.hce.paciente.nombres}" required="true" requiredMessage="El nombre es un campo obligatorio" />

                                <h:outputText value="Edad:" style="color:#003399" />
                                <h:outputText id="edadCalc" value="#{myUtil.edad}" />

                                <h:outputText value="Apellidos:" style="color:#003399" />
                                <h:inputText value="#{controladorHCE.hce.paciente.apellidos}" required="true" requiredMessage="El apellido del paciente es un campo obligatorio"/>

                                <h:outputText value="Teléfono:" style="color:#003399" />
                                <h:inputText value="#{controladorHCE.hce.paciente.telefono}" required="true" requiredMessage="El teléfono es un campo obligatorio"/>

                                <h:outputText value="Dirección:" style="color:#003399" />
                                <h:inputText value="#{controladorHCE.hce.paciente.direccion}" required="true" requiredMessage="La dirección es un campo obligatorio"/>

                                <h:outputText value="Religión:" style="color:#003399" />
                                <h:inputText value="#{controladorHCE.hce.paciente.religion}"/>

                                <h:outputText value="Lugar de Nacimiento:" style="color:#003399" />
                                <h:inputText value="#{controladorHCE.hce.paciente.lugarNacimiento}" required="true" requiredMessage="El lugar de nacimiento es un campo obligatorio"/>

                                <h:outputText value="Sexo:" style="color:#003399" />
                                <p:selectOneMenu value="#{controladorHCE.hce.paciente.sexo}">                            
                                    <f:selectItem itemLabel="Femenino" itemValue="F" />  
                                    <f:selectItem itemLabel="Masculino" itemValue="M" />  
                                </p:selectOneMenu>

                                <h:outputText value="Lugar de Residencia:" style="color:#003399" />
                                <h:inputText value="#{controladorHCE.hce.paciente.lugarResidencia}" required="true" requiredMessage="El lugar de residencia es un campo obligatorio"/>

                                <h:outputText value="Etnia" style="color:#003399" />
                                <p:selectOneMenu  id="comb"  
                                                  value="#{controladorHCE.hce.paciente.etnia}" 
                                                  converter="etniaConverter">
                                    <f:selectItems  itemValue="#{colm}" var="colm" 
                                                    itemLabel="#{colm.descripcion}" 
                                                    value="#{controladorEtnia.lstEtnia}" />
                                </p:selectOneMenu> 
                                <h:outputText value="Profesión:" style="color:#003399" />
                                <h:inputText value="#{controladorHCE.hce.paciente.profesion}" required="true" requiredMessage="La profesión es un campo obligatorio"/>

                                <h:outputText value="Estado Civil:" style="color:#003399" />
                                <p:selectOneMenu  id="combEC"  
                                                  value="#{controladorHCE.hce.paciente.estadoCivil}"
                                                  converter="estadoCivilConverter">
                                    <f:selectItems  itemValue="#{col}" var="col" 
                                                    itemLabel="#{col.descripcion}" 
                                                    value="#{controladorEstadoCivil.lstEstado}" />

                                </p:selectOneMenu> 

                                <h:outputText value="Organizacion:" style="color:#003399" />
                                <p:selectOneMenu id="combOrg"  
                                                 converter="organizacionConverter"
                                                 value="#{controladorHCE.composicion.organizacionDependencia.organizacion}"
                                                 >
                                    <f:selectItem itemLabel="Seleccione Una" itemValue=""/>
                                    <f:selectItems  value="#{controladorOrganizacion.lstOrganizacion}"
                                                    var="colOrg" 
                                                    itemLabel="#{colOrg.nombre}"
                                                    itemValue="#{colOrg}"
                                                    />
                                    <f:ajax  execute="@this" listener="#{controladorDependencia.ObtenerDependenciasxOrganizacion(controladorHCE.composicion.organizacionDependencia.organizacion.idOrganizacion)}" render="combDep"/>
                                    <p:ajax  event="valueChange" listener="#{controladorDependencia.ObtenerDependenciasxOrganizacion(controladorHCE.composicion.organizacionDependencia.organizacion.idOrganizacion)}" update="combDep"/>

                                </p:selectOneMenu> 

                                <h:outputText value="Dependencia:" style="color:#003399" />
                                <p:selectOneMenu id="combDep"  
                                                 value="#{controladorHCE.composicion.organizacionDependencia.dependencia}"
                                                 converter="dependenciaConverter">
                                    <f:selectItems  itemValue="#{colD}" var="colD" 
                                                    itemLabel="#{colD.descripcion}" 
                                                    value="#{controladorDependencia.lstDependencia}" />

                                </p:selectOneMenu> 

                                <h:outputText value="Lateralidad:" style="color:#003399" />
                                <h:inputText value="#{controladorHCE.hce.paciente.lateralidad}"/>
                            </h:panelGrid>
                            <br />
<!--                        </p:tab>
                        <p:tab id="tabMotivo" title="Datos de Consulta"> -->
                            <h:panelGrid id="pngInfHCE" columns="1">
                                <h:outputText value="Motivo de la Consulta" style="font-size: 14px; color: #003399"/>
                                <p:inputTextarea id="itMotivoConsulta" rows="5" cols="80" value="#{controladorHCE.lstEntradas[0].contenido}"/>

                                <h:outputText value="Enfermedad Actual" style="font-size: 14px; color: #003399"/>
                                <p:inputTextarea id="itEnfermedadActual" rows="5" cols="80" value="#{controladorHCE.lstEntradas[1].contenido}"/>   

                                <h:outputText value="Alergias" style="font-size: 14px; color: #003399"/>
                                <p:inputTextarea id="itAlergias" rows="5" cols="80" value="#{controladorHCE.lstEntradas[5].contenido}"/>  

                                <h:outputText value="Antecentes Patológicos Personales" style="font-size: 14px; color: #003399"/>
                                <p:inputTextarea id="itAPP" rows="5" cols="80" value="#{controladorHCE.lstEntradas[2].contenido}"/>   
                                <h:outputText value="Antecentes Patológicos Familiares" style="font-size: 14px; color: #003399"/>
                                <p:inputTextarea id="itAPF" rows="5" cols="80" value="#{controladorHCE.lstEntradas[3].contenido}"/>   

                                <h:outputText value="Antecentes Quirúrgicos" style="font-size: 14px; color: #003399"/>
                                <p:inputTextarea id="itAQX" rows="5" cols="80" value="#{controladorHCE.lstEntradas[4].contenido}"/>   

                                <h:outputText value="Examen Físico" style="font-size: 14px; color: #003399"/>
                                <p:inputTextarea id="itEX" rows="5" cols="80" value="#{controladorHCE.lstEntradas[6].contenido}"/>   
                                <h:panelGrid id="pngSignos" columns="4" style="font-size: 12px">
                                    <h:outputText value="Presión Arterial:" style="color:#003399" />
                                    <h:inputText value="#{controladorHCE.lstElementosSV[0].descripcion}"/>
                                    <h:outputText value="/" style="color:#003399" />
                                    <h:inputText value="#{controladorHCE.lstElementosSV[1].descripcion}"/>

                                    <h:outputText value="Oxígeno de la Sangre:" style="color:#003399" />
                                    <h:inputText value="#{controladorHCE.lstElementosSV[2].descripcion}"/>
                                    <h:outputText value="Pulso:" style="color:#003399" />
                                    <h:inputText value="#{controladorHCE.lstElementosSV[3].descripcion}"/>
                                </h:panelGrid>

                                <h:outputText value="Diagnostico" style="font-size: 14px; color: #003399"/>
                                <p:inputTextarea id="itDiagnostico" rows="5" cols="80" value="#{controladorHCE.lstEntradas[7].contenido}"/>  

                                <h:outputText value="Tratamiento" style="font-size: 14px; color: #003399"/>
                                <p:inputTextarea id="itTratamiento" rows="5" cols="80" value="#{controladorHCE.lstEntradas[8].contenido}"/>  

                                <h:outputText value="Medicamentos Seleccionados" style="font-size: 14px; color: #003399"/>

                                <p:dataTable id="tblMedicamentos" value="#{controladorHCE.lstElementosMedicamentos}" 
                                             var="rmed" rowKey="#{rmed.idElemento}" >                                     
                                     <p:column headerText="Codigo">
                                        <h:outputText value="#{rmed.idElemento}"/>
                                    </p:column>
                                    <p:column headerText="Descripción">
                                        <h:outputText value="#{rmed.descripcion}"/>
                                    </p:column>
                                    <p:column headerText="Dosis">
                                        <h:inputText value="#{rmed.dosisSoloMedicamento}" size="20"/>
                                    </p:column>
                                    <p:column headerText="Frecuencia">
                                        <p:inputTextarea value="#{rmed.indicacionOfrecuencia}" rows="1" cols="20"/>
                                    </p:column>

                                    <p:column >
                                        <p:commandButton id="btnBorrarMed"  action="#{controladorHCE.eliminarMedicamento()}" 
                                                         update=":frmHCE:tblMedicamentos" icon="ui-icon-trash" >  
                                            <f:setPropertyActionListener value="#{rmed}" target="#{controladorHCE.elementoSel}" />  
                                        </p:commandButton>  
                                    </p:column>
                                    <f:facet name="footer">
                                        <p:commandButton id="btnAgregarMed" value="Agregar Medicación" 

                                                         onclick="wdlgAgregarMed.show();" icon="ui-icon-extlink" 
                                                         style="font-size: 12px">

                                        </p:commandButton>
                                    </f:facet>
                                </p:dataTable>
                                <h:outputText value="Exámenes Seleccionados" style="font-size: 14px; color: #003399"/>

                                <p:dataTable id="tblExamenes" value="#{controladorHCE.lstElementosExamenes}" 
                                             var="colEx" rowKey="#{colEx.idElemento}"
                                             >
                                    <p:column headerText="Codigo">
                                        <h:outputText value="#{colEx.idElemento}"/>
                                    </p:column>
                                    <p:column headerText="Descripción">
                                        <h:outputText value="#{colEx.descripcion}"/>
                                    </p:column>
                                    <p:column headerText="Indicaciones">
                                        <center>
                                            <p:inputTextarea value="#{colEx.indicacionOfrecuencia}" rows="1" cols="40"/>
                                        </center>
                                    </p:column>
                                    <p:column >
                                        <p:commandButton id="btnBorrarExamen"  action="#{controladorHCE.eliminarExamen()}" 
                                                         update=":frmHCE:tblExamenes" icon="ui-icon-trash" >  
                                            <f:setPropertyActionListener value="#{colEx}" target="#{controladorHCE.elementoSel}" />  
                                        </p:commandButton>  
                                    </p:column>
                                    <f:facet name="footer">
                                        <p:commandButton id="btnAgregarEx" value="Agregar Examen" 
                                                         onclick="wdlgAgregarExam.show();" icon="ui-icon-extlink"
                                                         style="font-size: 12px"/>

                                    </f:facet>
                                </p:dataTable>
                            </h:panelGrid>
                            <br />
                            <center>       
                                <p:commandButton id="btnAgregarHCE" value="Aceptar" 
                                                 action="#{controladorHCE.guardarHCE()}"                                                                                  
                                                 />

                                <p:commandButton id="bntCancelarHCE" value="Cancelar"                                         
                                                 process="@this" action="Profesional.xhtml?faces-redirect=true"/>
                            </center>

<!--                        </p:tab>
                    </p:tabView>-->

                </h:form>

                <p:ajaxStatus style="width:64px;height:64px;position:fixed;right:5px;bottom:5px">  
                    <f:facet name="start">  
                        <p:graphicImage value="/resources/images/loading.gif" />  
                    </f:facet>  

                    <f:facet name="complete">  
                        <h:outputText value="" />  
                    </f:facet>  
                </p:ajaxStatus> 

            </ui:define>


            <ui:define name="dialogos">


                <p:dialog id="dlgAgregarMed" widgetVar="wdlgAgregarMed"
                          header="Agregar Farmaco/Medicamento" modal="true" closable="true" resizable="false">
                 
                    <h:form>
                        <center><h:outputText value="Listado de Medicamentos" style="font-size: 14px; color: #003399"/></center>
                        <p:dataTable id="tblMedicamentosDialog" 
                                     var="medicamento" 
                                     value="#{controladorElemento.getLstElemento('M')}" 
                                     widgetVar="wdlgMedicamento"
                                     paginator="true" rows="6"
                                     filteredValue="#{controladorElemento.lstElementoFiltrados}"
                                     emptyMessage="Datos no encontrados"                                      
                                     rowKey="#{medicamento.idElemento}"
                                     selection="#{controladorElemento.elementoSel}"
                                     selectionMode="single"
                                     >
                        

                            <f:facet name="header">  
                                <p:outputPanel>  
                                    <h:outputText value="Buscar:" />  
                                    <p:inputText id="globalFilter" onkeyup="wdlgMedicamento.filter()" style="width:150px" />  
                                </p:outputPanel>  
                            </f:facet>

                            <p:column
                                headerText="Código" >

                                <h:outputText value="#{medicamento.idElemento}"/>
                            </p:column>
                            <p:column headerText="Descripción" filterBy="descripcion" filterStyle="display:none">
                                <h:outputText value="#{medicamento.descripcion}"/>
                            </p:column>        
                            <f:facet name="footer">
                                <center> 
                                    <p:commandButton id="btnAgregarM" value="Aceptar" 
                                                     action="#{controladorHCE.agregarMedicamento(controladorElemento.elementoSel)}" 
                                    update=":frmHCE:tblMedicamentos"/>


                                    <p:commandButton id="bntCancelarM" value="Cancelar"
                                                     onclick="wdlgAgregarMed.hide();"
                                                     process="@this" />
                                </center>
                            </f:facet>
                        </p:dataTable>

                    </h:form>
                </p:dialog>

                <p:dialog id="dlgAgregarExam" widgetVar="wdlgAgregarExam"
                          header="Agregar Examen Médico" modal="true" closable="true" resizable="false">
                    <h:form>
                        <center><h:outputText value="Listado de Exámenes Médicos" style="font-size: 14px; color: #003399"/></center>

                        <p:dataTable id="tblExamenesDialogo" value="#{controladorElemento.getLstElemento('E')}" 
                                     widgetVar="wdlgExamen"
                                     var="examen" rowKey="#{examen.idElemento}" 
                                     paginator="true" rows="20" 
                                     selection="#{controladorElemento.elementoSel}"
                                     selectionMode="single"
                                     >

                            <f:facet name="header">  
                                <p:outputPanel>  
                                    <h:outputText value="Buscar:" />  
                                    <p:inputText id="globalFilter" onkeyup="wdlgExamen.filter()" style="width:150px" />  
                                </p:outputPanel>  
                            </f:facet>
                            <p:column headerText="Código">
                                <h:outputText value="#{examen.idElemento}"/>
                            </p:column>
                            <p:column headerText="Descripción" filterBy="descripcion" filterStyle="display:none">
                                <h:outputText value="#{examen.descripcion}"/>
                            </p:column>

                            <f:facet name="footer">
                                <center>

                                    <p:commandButton id="btnAgregarE" value="Aceptar" 
                                                     action="#{controladorHCE.agregarExamen(controladorElemento.elementoSel)}"
                                    update=":frmHCE:tblExamenes"/>
                                    <p:commandButton id="bntCancelarE" value="Cancelar"
                                                     onclick="wdlgAgregarExam.hide();"
                                                     process="@this" />
                                </center>
                            </f:facet>
                        </p:dataTable>
                    </h:form>
                </p:dialog>
            </ui:define>

        </ui:composition>

    </h:body>
</html>
